﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace NWN.GDY.Service.Common
{
    public static class GDYConsts
    {
        public struct ReturnDefine
        {
            static public readonly int Unknown = -99998;
            static public readonly int Exception = -99999;
            static public readonly int AjaxException = -99997;
            static public readonly int InvalidCard = -99996;
            //缺用户参数
            static public readonly int EmptyUserID = -90017;
            //缺房间参数
            static public readonly int EmptyRoomGUID = -90018;
            //用户未登录
            static public readonly int UserNotLogin = -90019;
            static public readonly int NOTABLE = -90001;
            static public readonly int SUCCESS = 0;
            static public readonly int SeatIsOccupied = -90002;
            static public readonly int NickAlreadyInTable = -90003;
            static public readonly int NotCreator = -90004;
            static public readonly int NoPlayer = -90005;
            static public readonly int EmptyUIDORPSD = -90006;
            static public readonly int INVALIDUIDORPSD = -90007;
            static public readonly int TOOLONGUIDORPSD = -90008;
            static public readonly int UserExists = -90009;
            static public readonly int InValidUser = -90010;
            static public readonly int TOOSHORTUIDORPSD = -90011;
            //添加失败,用户已在此房间,用户可直接进入
            static public readonly int USERALREADYINROOM = -90012;
            //在别的房间
            static public readonly int USERINOTHERROOM = -90013;
            //房间不存在或密码不正确
            static public readonly int ROOMPSDERROR = -90014;
            //用户不在房间，无法获取信息
            static public readonly int USERNOTINROOM = -90015;
            //无版本信息
            static public readonly int NOVERSIONINFO = -90016;
            //位子已经有人,无法入坐
            static public readonly int SEATTAKEN = -90020;
            //房间不存在或游戏已开始
            static public readonly int GAMESTARTED = -90021;
            //有人未开始,无法生成新局
            static public readonly int NOTALLREADY = -90022;
            //未满2人,无法生成新局
            static public readonly int NOTENOUGHPLAYER = -90023;
            //用户不在房间，或非观看状态
            static public readonly int USERNOTINROOMORNOTSTAND = -90024;
            //用户不在房间，或非坐下状态
            static public readonly int USERNOTINROOMORNOTSIT = -90025;
            //无游戏币,无法入坐
            static public readonly int NOCOIN = -90026;
            //牌型不对，无法出牌
            static public readonly int UNCONFIRMCARDS = -90027;
            //游戏未开始，不能出牌
            static public readonly int GAMENOTSTART = -90028;
            //未开局，不能出牌
            static public readonly int ROUNDNOTSTART = -90029;
            //非出牌人，不能出牌
            static public readonly int NOTCURRENTUSER = -90030;
            //用户在房间中状态不对，不能出牌
            static public readonly int ROOMSTATUSERROR = -90031;
            //要出的牌或手上牌为空，不能出牌
            static public readonly int CARDSERROR = -90032;
            //出的牌不在手上牌里，不能出牌
            static public readonly int CARDNOTINHAND = -90033;
            //牌类型不适合用当前比较类
            static public readonly int HANDCARDTYPEERROR = -90034;
            //对比结果不符合
            static public readonly int HANDCARDCOMPAREWRONG = -90035;
            //串改了选择的牌型
            static public readonly int HANDCARDCHANGED = -90036;
            //上一手牌也是本人出的，不能ＰＡＳＳ
            static public readonly int CANNOTPASSSELF = -90037;
        }

        public struct HandCardType
        {
            static public readonly int Single = 1;
            static public readonly int Double = 2;
            static public readonly int Straight = 3;
            static public readonly int Bomb = 10;
            static public readonly int DoubleBomb = 11;
            static public readonly int TripleBomb = 12;
            static public readonly int FourfoldBomb = 13;
            static public readonly int FiveTimesBomb = 14;
            static public readonly int SixTimesBomb = 15;
            static public readonly int UnConfirm = 20;
        }
    }
}
